![]() consensus verification method and consensus verification device
专利摘要:
the present invention relates to a method and device for verifying consensus. a regulatory node is responsible for verifying that a transaction request is valid. if the transaction request is valid, the regulating node generates a summary based on the data specified in the transaction data and sends the summary and unspecified data included in the transaction data for each consensus node for consensus verification. each consensus node stores the summary and unspecified data on a blockchain after the consensus check is successful. as such, the consensus node does not receive the specified data and therefore does not store the specified data on the blockchain. as a result, the specified data is not described. in addition, the summary can be used to verify that the specified data that is not stored on the blockchain is tampered with. 公开号:BR112019013367A2 申请号:R112019013367 申请日:2018-04-26 公开日:2019-12-31 发明作者:Tang Qiang 申请人:Alibaba Group Holding Ltd; IPC主号:
专利说明:
"METHOD FOR CONSENSUS VERIFICATION AND DEVICE FOR CONSENSUS VERIFICATION" Field of Invention [001] The present application refers to the field of blockchain technologies and, in particular, to a method and device for verifying consensus. Background to the Invention [002] A blockchain network is also referred to as a distributed accounting network and is characterized by decentralization, openness and transparency. Each blockchain node synchronizes with a blockchain. The blockchain network includes blockchain nodes. Each blockchain node can initiate a transaction request and participate in the consensus check on the transaction request. [003] One method for verifying existing consensus is as follows: A blockchain node participating in a transaction transmits a transaction request for the transaction to each consensus node in a blockchain network. The consensus node is a blockchain node responsible for consensus verification, and the transaction request includes the transaction data for the transaction. Each consensus node stores the transaction data on a blockchain after the consensus check performed through each consensus node in the successful transaction request. [004] However, each blockchain node can synchronize with the blockchain to obtain the transaction data for each transaction stored on the blockchain. Consequently, the privacy included in the transaction data of a blockchain node participating in the transaction is easy to describe. Brief Description of the Invention [005] The implementations of the present application provide a Petition 870190059761, of 06/27/2019, p. 37/74 2/24 method and device for consensus verification, to alleviate the problem that, when using an existing consensus verification method, the privacy of a blockchain node participating in a transaction is easy to describe. [006] To alleviate the previous technical problem, the implementations of the present application are implemented as follows: [007] An implementation of the present application provides a method for verifying consensus, in which the method includes the following: obtaining, through a regulatory node, a transaction request, in which the transaction request includes the transaction data and a subscription to at least one transaction node; determine whether the transaction request is valid based on the transaction data and a signature on each transaction node; and if the transaction request is valid, generate a summary based on the specified data included in the transaction data and send the summary and unspecified data included in the transaction data for each consensus node, so that each consensus node performs consensus verification. [008] An implementation of the present application provides a device for consensus verification, in which the device includes the following: a first acquisition module, configured to obtain a transaction request, in which the transaction request includes the transaction data and a subscription to at least one transaction node; and a determination and processing module, configured to determine whether the transaction request is valid based on the transaction data and a signature on each transaction node; and if the transaction request is valid, generate a summary based on the specified data included in the transaction data and send the summary and unspecified data included in the transaction data for each consensus node, so that each consensus node performs Petition 870190059761, of 06/27/2019, p. 38/74 3/24 consensus verification. [009] It can be seen from the technical solutions provided in the implementations of the present application that, in the implementations of the present application, the regulatory node is responsible for verifying whether the transaction request is valid. If the transaction request is valid, the regulatory node generates the summary based on the data specified in the transaction data and sends the summary and unspecified data included in the transaction data for each consensus node for consensus verification. Each consensus node stores the summary and unspecified data on a blockchain after the consensus check is successful. In this way, the consensus node does not receive the specified data and therefore does not store the specified data on the blockchain. As a result, the specified data is not described. In addition, the summary can be used to verify that the specified data that is not stored on the blockchain is tampered with. Brief Description of the Figures [010] To more clearly describe the technical solutions in the implementations of the present application or in the existing technology, the following briefly describes the attached drawings necessary to describe the implementations or the existing technology. Apparently, the attached drawings in the following description show only a few implementations of the present application, and a person skilled in the art can still derive other designs from these attached drawings without creative efforts. [011] Figure 1 is a flow chart that illustrates a method for verifying consensus, according to an implementation of the present application. [012] Figure 2 is a schematic diagram illustrating a blockchain network, according to an implementation of the present application. Petition 870190059761, of 06/27/2019, p. 39/74 4/24 [013] Figure 3 is a schematic diagram that illustrates a blockchain network, according to an implementation of the present application. [014] Figure 4 is a schematic diagram illustrating a device for checking consensus, according to an implementation of the present application. Detailed Description of the Invention [015] The implementations of the present application provide a method and a device for verifying consensus. [016] To make it possible for a technician on the subject to better understand the technical solutions in the present application, the following clearly and comprehensively describes the technical solutions in the implementations of this application with reference to the attached drawings in the implementations of this application. Apparently, the implementations described are merely just a few, but not all implementations of the present application. All other implementations obtained by a person skilled in the art based on the implementations of the present application without creative efforts should fall within the scope of protection of the present application. [017] The technical solutions provided in the implementations of this application are described in detail below with reference to the attached Figures. [018] Figure 1 is a flow chart that illustrates a method for verifying consensus, according to an implementation of the present application. The method includes the following steps. [019] S101. A regulatory node obtains a transaction request. [020] The method is carried out through the regulating node. The regulatory node is a blockchain node responsible for regulating transactions. The regulatory node has public trust and the items verified through the Petition 870190059761, of 06/27/2019, p. 40/74 5/24 regulatory nodes are recognized by blockchain nodes across the network. [021] In a blockchain network, a blockchain node that participates in a transaction is a transaction node, and a blockchain node that participates in a consensus is a consensus node. It is worth emphasizing that a blockchain node can be a transaction node or a consensus node, and can not only participate in a transaction, but also participate in the consensus check on the transaction. [022] Figure 2 is a schematic diagram illustrating a blockchain network, according to an implementation of the present application. As shown in Figure 2, a black blockchain node is a regulatory node. A white blockchain node is a consensus node. A shaded node is a transaction node and can also participate in consensus verification. [023] In the present implementation of the present application, the transaction request includes the transaction data and a signature of at least one transaction node. The transaction node can be a blockchain node that pays an asset in a transaction. A blockchain node that accepts an asset in a transaction can also be the transaction node described in this application. To facilitate description, descriptions are provided below using an example that the transaction node is a blockchain node that pays an asset in a transaction. In addition, this application does not set limits on whether the transaction node is also a consensus node at the same time. [024] The transaction data is the detailed data of a transaction, such as a transaction node identity, detailed content of an asset involved in the transaction, an asset number of an asset involved in the transaction and an account address of the transaction node. transaction. [025] In the present implementation of this application, the Petition 870190059761, of 06/27/2019, p. 41/74 6/24 Transaction node signature is generated through the transaction node for the transaction data and is used as a proof and records that the transaction node approves the transaction data. If a transaction node approves the transaction data for a transaction, in which the transaction node participates, to reserve proof and record the transaction later, the transaction node can first construct a summary of the transaction data based on a summary algorithm and still process the summary of the transaction data using a signature algorithm and a private key to generate a signature from the transaction node. [026] It is worth noting that there may be a plurality of summary algorithms, but a common feature of summary algorithms is that plain text cannot be inversely derived from a summary obtained by calculating simple text. If there is any change in the plain text, a summary obtained by calculating the modified plain text may also be different. It can be seen that the summary of the transaction data can be used as a unique identifier of the transaction data to identify each transaction. Therefore, if the transaction node subscribes to the transaction data, it can indicate that the transaction node approves the transaction data and, consequently, the transaction node can be prevented from denying the transaction data later. [027] In the present implementation of the present application, in the transaction request, the signature of the transaction node corresponds to an asset number of an asset used through the transaction node in the transaction data. The transaction node uses the signature to declare the asset number of the asset used through the transaction node. The transaction node allows the signature of the transaction node and the asset number used through the transaction node to form a specific data structure, for example, asset number 001 (subscription A); or you can use another method Petition 870190059761, of 06/27/2019, p. 42/74 7/24 to establish a mapping relationship between the subscription and the asset number used through the transaction node. Certainly, the asset number that corresponds to the signature of the transaction node is not necessarily an asset number that actually belongs to the transaction node. In other words, the transaction node may maliciously and fraudulently use an asset number belonging to another node. The way to avoid the risk is part of the description below to verify the validity of the transaction request. [028] In the present implementation of the present application, a transaction request may include the signatures of a plurality of transaction nodes. That is, any transaction node can collect the transaction node signatures, generate a transaction request, and send the transaction request to the regulatory node. One method of collecting signatures can be as follows: Transaction data is transmitted between the transaction nodes in order, each transaction node attaches a transaction node signature to the transaction data and, optionally, a final transaction node, where the transaction data is transmitted, generates a transaction request. Alternatively, a transaction node can receive a subscription sent through another transaction node and then generate a transaction request. To facilitate description, descriptions are provided below using an example that the transaction request includes the signatures of a plurality of transaction nodes. [029] S102. Determine whether the transaction request is valid based on the transaction data and on a signature for each transaction node, and perform step S103 if the transaction request is valid or execute step S104 if the transaction request is invalid. [030] In the present implementation of this application, there is Petition 870190059761, of 06/27/2019, p. 43/74 8/24 a plurality of methods to verify the validity of the transaction request. For example, in Case 1, the regulatory node can obtain a credit capacity from each transaction node that signs based on a credit record of each transaction node that is stored through the regulatory node and determines that the transaction request is invalid if the creditworthiness of each transaction node is less than a predetermined score or determines that the transaction request is valid if a creditworthiness score for each transaction node is not less than a predetermined score. For example, in Case 2, the regulating node, alternatively, can use the transaction data, the signature of each transaction node and a public key for each transaction node to verify that the transaction node tamper with the transaction data. transaction or fraudulently uses someone else's asset. Certainly, there may be other cases of verification of the validity of the transaction request. Details are omitted at present for simplicity. [031] In Case 2, the regulatory node may keep the public key for each transaction node in advance, or the transaction request may include the public key for each transaction node. The public key of each transaction node can be used to decrypt the signature of the transaction node to obtain a summary of the transaction data, thereby verifying whether a signatory tamper with the transaction data. If a decryption result obtained through the regulatory node when decrypting the transaction node signature using the public key provided by the transaction node is inconsistent with the summary of the transaction data, it indicates that the transaction node generates the signature using, fraudulently, a private key from another blockchain node or the transaction node is tampered with the transaction data and, therefore, the transaction request is invalid. Transaction request validity Petition 870190059761, of 06/27/2019, p. 44/74 9/24 can still be verified if no transaction node is tampered with the transaction data. [032] In the present implementation of the present application, the subsequent validity check may include the following: verify that the transaction node fraudulently uses someone else's asset. In a general blockchain network, an asset number of an asset belonging to each blockchain node is associated with a public key of the blockchain node, and the public key that serves as an externally described identity feature of the blockchain node can identify exclusively a blockchain node identity. In other words, an asset number associated with a public key of a blockchain node is an asset number that actually belongs to the blockchain node. [033] Therefore, in the present implementation of the present application, the regulatory node determines an asset number of an asset actually belonging to each transaction node based on the public key of each transaction node, and then compares the number of the asset (the number of the asset used through the transaction node) that corresponds to the signature of the transaction node in the transaction data with the asset number actually belonging to the transaction node to determine whether the transaction node uses it maliciously and fraudulently , an asset number belonging to another blockchain node. The transaction request is invalid if at least one transaction node maliciously and fraudulently uses an asset number belonging to another blockchain node. The transaction request is valid if the asset number used by each transaction node is the asset number belonging to the transaction node. [034] In conclusion, it can be observed that, in Case 2, that the regulatory node verifies the validity of the transaction request, the verification is carried out progressively, and the following two aspects need to be Petition 870190059761, of 06/27/2019, p. 45/74 10/24 confirmed successively to determine whether the transaction request is valid: 1. The transaction data is not tampered with. 2. The transaction node does not fraudulently use an asset number belonging to another blockchain node. [035] S103. Generate a privacy summary based on the privacy data in the transaction data and send the privacy summary and non-privacy data in the transaction data to each consensus node, so that each consensus node performs consensus verification. [036] In the present implementation of the present application, the specified data may be privacy data, and the unspecified data may be non-privacy data. The privacy data includes the privacy of the transaction node and can be specified through the transaction node and notified to the regulatory node; or it can be specified through the regulating node. For example, privacy data may include a transaction node identity, the detailed content of an asset and an account address, and so on, which are considered to be transaction node privacy. [037] As described above, plain text cannot be inversely derived from the summary of plain text. Therefore, after the summary is generated for the privacy data, the summary can be stored on a trusted blockchain and the privacy data can be hidden, so that reliable evidence and a record of the privacy data can be reserved and privacy data can be protected. [038] After receiving the summary and non-privacy data, each consensus node can perform the consensus check based on the non-privacy data, for example, can check whether there are expenses Petition 870190059761, of 06/27/2019, p. 46/74 11/24 duplicates based on an asset number in the non-privacy data. If the consensus check is successful, the privacy summary and non-privacy data will be stored on the blockchain. The validity of the transaction request is verified and endorsed by the regulatory node in advance. [039] As such, the consensus check on the transaction is completed. The summary stored on the blockchain can be used to verify that the privacy data claimed through a transaction node is true, to resolve a dispute between the transaction nodes. [040] In the present implementation of the present application, the regulatory node can still send the signature of each transaction node for each consensus node, so that after the consensus verification performed by each consensus node in the transaction is successful, the consensus node also stores the signature of each transaction node on the blockchain to prevent each transaction node from subsequently denying the signature. [041] In addition, in the present implementation of this application, the regulatory node may instruct at least one transaction node to store the transaction data or the specified data included in the transaction data, if the transaction request is valid. Certainly, alternatively, the regulatory node can instruct at least one transaction node to store the transaction data or the specified data in a private database that corresponds to the transaction node after the consensus check performed by each node consensus on the successful transaction and after the summary is stored on the blockchain. In conclusion, each transaction node stores the specified data or the transaction data by itself. Implementations are not limited in this application. [042] Although the transaction node can falsely tamper with Petition 870190059761, of 06/27/2019, p. 47/74 12/24 private the specified data stored by the transaction node, the summary stored in the blockchain can be used to verify the authenticity of the specified data at any time, therefore avoiding the risk caused by private tampering with the data specified by the transaction node. [043] Figure 3 is a schematic diagram illustrating a blockchain network, according to an implementation of the present application. As shown in Figure, in the blockchain network, each blockchain node maintains a blockchain and each blockchain node has its own private database to store the privacy data of a transaction in which the blockchain node participates. For transaction A, only a private database of a blockchain node (a transaction node) participating in transaction A stores the privacy data corresponding to transaction A and a private database of a blockchain node (a non-transaction node) that does not participate in transaction A does not store the privacy data that corresponds to transaction A. [044] S104. Reject the transaction request. [045] According to the consensus verification method shown in Figure 1, the regulatory node is responsible for verifying that the transaction request is valid. If the transaction request is valid, the regulatory node generates the summary based on the data specified in the transaction data and sends the summary and unspecified data included in the transaction data for each consensus node for consensus verification. Each consensus node stores the summary and unspecified data on the blockchain after the consensus check is successful. As such, the consensus node does not receive the specified data and therefore does not store the specified data on the blockchain. As a result, the specified data is not described. In addition, the summary can be used to Petition 870190059761, of 06/27/2019, p. 48/74 13/24 check if the specified data that is not stored on the blockchain is tampered with. [046] In addition, for a specific blockchain network, such as a consortium blockchain network, each blockchain node in the consortium blockchain network has a digital certificate issued by a certification authority, in which the digital certificate is used to endorse a real identity from the blockchain node. The digital certificate includes a blockchain node identity (ID) and a public key. It is important to note that, unlike a general blockchain network, in the consortium's blockchain network, an asset number belonging to the blockchain node is associated with the blockchain node ID. [047] In an application scenario of the consortium blockchain network, the regulatory node can obtain a digital certificate from the transaction node and determine whether the transaction request is valid based on the digital certificate of the transaction node, the signature of each transaction node and transaction data. [048] The regulatory node can decrypt the signature of each transaction node based on a public key included in the digital certificate of the transaction node; and when determining that a decryption result that corresponds to each transaction node is the same as the summary of the transaction data, determining an asset number that matches an identity based on the identity included in the digital certificate for each transaction node and use the asset number as an asset number belonging to the transaction node; and determine whether the transaction request is valid based on the asset number belonging to each transaction node, the signature on each transaction node and the transaction data; or determine that the transaction request is invalid when determining that a decryption result that corresponds to at least one Petition 870190059761, of 06/27/2019, p. 49/74 14/24 transaction is different from the summary of the transaction data. [049] In addition, the regulatory node can determine an asset number that corresponds to the signature of each transaction node in the transaction data based on the signature of the transaction node and use the asset number as an asset number used through the transaction node; determine that the transaction node is invalid if the asset number belonging to the transaction node does not include at least one asset number used through the transaction node; or determine that the transaction node is valid if the asset number belonging to the transaction node includes all asset numbers used by the transaction node; and determine that the transaction request is invalid when at least one transaction node is invalid; or determine that the transaction request is valid when all transaction nodes are valid. [050] That the transaction node is valid means that the transaction node does not commit an illegal malicious act (such as using another person's signature fraudulently or using another person's asset fraudulently). When it is determined that at least one asset number used through a transaction node in a current transaction is not an asset number belonging to the transaction node, the transaction node can be considered to commit an illegal act to use, fraudulently, someone else's asset number and is consequently invalid. [051] In other words, in the consortium's blockchain network application scenario, the transaction node provides the transaction node's digital certificate instead of the transaction node's public key for the regulatory node. In addition, the asset number actually belonging to the transaction node needs to be confirmed based on the transaction node ID. As such, there may be a slight difference in the two aspects Petition 870190059761, of 06/27/2019, p. 50/74 15/24 described above that the regulating node needs to confirm to verify the validity of the transaction request (1. The transaction data is not tampered with. 2. The transaction node does not fraudulently use an asset number belonging to another blockchain node). [052] The regulatory node, in the first place, tries to decrypt the signature of each transaction node based on the public key included in the digital certificate of the transaction node. If the result of the decryption is consistent with the summary of the transaction data, it indicates that the transaction node does not tamper with the transaction data. After determining that the identities of all transaction nodes are true, the regulatory node can continue to determine whether the asset number (that is, the asset number used by each transaction node in the transaction) matches the signature for each transaction node. transaction in the transaction data is an asset number of the transaction node, based on the asset number (that is, the asset number actually belonging to the transaction node) that corresponds to the ID included in the digital certificate of the transaction node. Indicates that the transaction request is valid if no transaction node fraudulently uses someone else's asset number. [053] It is worth emphasizing that, in the consortium's blockchain network application scenario, the transaction node ID that is included in the transaction node's digital certificate is actually the privacy of the transaction node. In the present implementation of this application, the regulatory node does not send the digital certificate from the transaction node to the consensus node, therefore, ensuring that the transaction node ID is not described. [054] Based on the method for verifying consensus shown in Figure 1, an implementation of the present application additionally provides a device for verifying consensus. According Petition 870190059761, of 06/27/2019, p. 51/74 16/24 shown in Figure 4, the device includes the following: a first acquisition module (401), configured to obtain a transaction request, in which the transaction request includes the transaction data and a subscription of at least a transaction node; and a determination and processing module (402), configured to determine whether the transaction request is valid based on the transaction data and on a signature for each transaction node; and if the transaction request is valid, generate a summary based on the specified data included in the transaction data and send the summary and unspecified data included in the transaction data for each consensus node, so that each consensus node performs consensus verification. [055] The device also includes a rejection module (403), configured to reject the transaction request if the transaction request is invalid. [056] The device also includes a second acquisition module (404), configured to obtain a digital certificate for each transaction node before it is determined whether the transaction request is valid based on the transaction data and the signature of each node transaction. [057] The determination and processing module (402) is configured to determine whether the transaction request is valid based on the transaction data, on the signature of each transaction node and on the digital certificate of each transaction node. [058] The determination and processing module (402) is configured to decrypt the signature of each transaction node based on a public key included in the digital certificate of the transaction node; and when determining that a decryption result that corresponds to each transaction node is the same as the summary of the transaction data, determine an asset number that matches an identity based on Petition 870190059761, of 06/27/2019, p. 52/74 17/24 identity included in the digital certificate of each transaction node and use the asset number as an asset number belonging to the transaction node; and determine whether the transaction request is valid based on the asset number belonging to each transaction node, the signature on each transaction node and the transaction data; or determine that the transaction request is invalid by determining that a decryption result that corresponds to at least one transaction node is different from the summary of the transaction data. [059] The determination and processing module (402) is configured to determine an asset number that corresponds to the signature of each transaction node in the transaction data based on the signature of the transaction node and to use the asset number as a number asset used through the transaction node; determine that the transaction node is invalid if the asset number belonging to the transaction node does not include at least one asset number used through the transaction node; or determine that the transaction node is valid if the asset number belonging to the transaction node includes all asset numbers used by the transaction node; and determine that the transaction request is invalid when at least one transaction node is invalid; or determine that the transaction request is valid when all transaction nodes are valid. [060] The device also includes a notification module (405), configured to instruct at least one transaction node to store the transaction data or the specified data included in the transaction data if the transaction request is valid. [061] In the 1990s, if a technical improvement is a hardware improvement (for example, an improvement to a circuit structure, such as a diode, a transistor or a switch) or a software improvement (an improvement in a procedure Petition 870190059761, of 06/27/2019, p. 53/74 18/24 method) can be clearly distinguished. However, with the development of technologies, current improvements in many method procedures can be considered as direct improvements in the structures of hardware circuits. A designer, in general, programs an improved method procedure on a hardware circuit to obtain a corresponding hardware circuit structure. Therefore, a method procedure can be improved using a hardware entity module. For example, a programmable logic device (PLD) (for example, a Field Programmable Gate Array (FPGA)) is an integrated circuit, and a logical PLD function is determined by a user through device programming. The designer performs programming to integrate a digital system with a PLD without requiring a chip manufacturer to design and produce an application-specific integrated circuit chip. In addition, today, instead of manually manufacturing an integrated circuit chip, this programming is mainly implemented using the logical compiler software. The logical compiler software is similar to a software compiler used to develop and write a program. The original code needs to be written in a specific programming language for compilation. The language is referred to as a hardware description language (HDL). There are many HDLs, such as Advanced Boolean Expression Language (ABEL), Altera Hardware Description Language), Confluence (AHDL), Cornell University Programming Language (CUPL), HDCal, Java Hardware Description Language (JHDL), Lava, Lola, MyHDL, PALASM and Ruby Hardware Description Language (RHDL). Very-HighSpeed Integrated Circuit Hardware Description Language (VHDL) and Verilog are the most used. A person skilled in the art should also understand that a hardware circuit that implements a logical method procedure can be easily obtained since the method procedure is logically programmed using the various hardware description languages. Petition 870190059761, of 06/27/2019, p. 54/74 19/24 described and is programmed in an integrated circuit. [062] A controller can be implemented using any suitable method. For example, the controller can be a microprocessor or processor and a computer-readable code from a computer-readable storage medium (such as software or firmware) that can be run by the microprocessor, or the processor, a logic port, a switch, an application-specific integrated circuit (ASIC), a programmable logic controller or a built-in microcontroller. Controller examples include, but are not limited to, the following microprocessors: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 and Silicone Labs C8051F320. The memory controller can also be implemented as part of the memory control logic. A person skilled in the art also knows that, in addition to implementing the controller using computer-readable program code, logical programming can be performed in method steps to enable the controller to implement the same function in logic gate forms, the switch, the application-specific integrated circuit, the programmable logic controller and the built-in microcontroller. Therefore, the controller can be considered as a hardware component, and a device included in the controller configured to implement various functions can also be considered as a structure in the hardware component. Or in another way, the device configured to implement different functions can even be considered as a software module that implements the method and a structure in the hardware component. [063] The system, device, module or unit illustrated in the previous implementations can be implemented using a computer chip or an entity, or can be implemented using a product that has a specific function. A deployment device Petition 870190059761, of 06/27/2019, p. 55/74 Typical 20/24 is a computer. The computer, for example, can be a personal computer, a portable computer, a cell phone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an e-mail device, a game console, a tablet computer, a wearable device, or a combination of any of these devices. [064] For ease of description, the device above is described by dividing the functions into several units. Certainly, when the present application is implemented, the functions of the units can be implemented in one or more pieces of software and / or hardware. [065] A person skilled in the art should understand that an implementation of the present invention can be provided as a method, system or computer program product. Therefore, the present invention can use a form of hardware-only implementations, software-only implementations or implementations with a combination of software and hardware. In addition, the present invention may use a form of computer program product that is implemented in one or more storage media usable by computer (including, but not limited to, disk memory, CD-ROM, optical memory, and the like) that include the program code usable by the computer. [066] The present invention is described with reference to the flowcharts and / or block diagrams of the method, the device (system) and the computer program product based on the implementations of the present invention. It is worth noting that computer program instructions can be used to implement each process and / or each block in flowcharts and / or block diagrams and a combination of a process and / or a block in flowcharts and / or diagrams of blocks. These computer program instructions can be provided for a computer Petition 870190059761, of 06/27/2019, p. 56/74 21/24 general purpose, a dedicated computer, an embedded processor or a processor from another programmable data processing device to generate a machine, so that instructions executed by the computer or the processor of another programmable data processing device generate a device to implement a function specified in one or more processes in flowcharts and / or in one or more blocks in block diagrams. [067] These computer program instructions can be stored in a computer-readable memory that can instruct the computer or other programmable data processing device to work in a specific way, so that the instructions stored in the computer memory generate an artifact that includes an instructional device. The instructional device implements a function specified in one or more processes in flowcharts and / or in one or more blocks in block diagrams. [068] These computer program instructions can be loaded onto the computer or another programmable data processing device, so that a series of operations and operations and steps are performed on the computer or on another programmable device, thereby generating the computer-implemented processing. Therefore, instructions executed on the computer or other programmable device provide the steps to implement a specified function in one or more processes in the flowcharts and / or in one or more blocks in the block diagrams. [069] In a typical configuration, a computing device includes one or more processors (CPU), one or more input / output interfaces, one or more network interfaces and one or more memories. [070] The memory can include a non-persistent memory, a Petition 870190059761, of 06/27/2019, p. 57/74 22/24 random access memory (RAM), a non-volatile memory and / or other way that is in a computer-readable medium, for example, a read-only memory (ROM) or a flash memory (flash RAM). Memory is an example of a computer-readable medium. [071] The computer-readable medium includes the persistent, non-persistent, mobile and immobile medium that can store information using any method or technology. The information can be a computer-readable instruction, a data structure, a program module or other data. Examples of the computer's storage medium include, but are not limited to, parameter random access memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), another type of random access memory (RAM), read-only memory (ROM), an electronically erasable programmable read-only memory (EEPROM), a flash memory or other memory technology, a compact disc read (CD-ROM) memory, a versatile disk digital (DVD) or other optical storage, magnetic cassette tape, magnetic tape / magnetic disk storage or other magnetic storage device, or any other means of non-transmission. The computer's storage medium can be used to store information accessible through a computing device. Based on the definition of this application, the computer-readable medium does not include computer-readable transient means (transient means), such as a modulated data signal and vehicle. [072] It is also worth noting that the terms include, understand, or any other variants, are intended to include a non-exclusive inclusion, that is, a process, a method, a product or a device that includes a list of elements that includes not only these elements, but also includes other elements that are not expressly Petition 870190059761, of 06/27/2019, p. 58/74 23/24 listed or includes the elements inherent to such a process, method, product or device. Without further restrictions, an element preceded by includes a ... does not exclude the existence of additional identical elements in the process, method, product or device that includes the element. [073] A person skilled in the art should understand that an implementation of the present application can be provided as a method, system or computer program product. Therefore, the present application can use a form of hardware-only implementations, software-only implementations or implementations with a combination of software and hardware. In addition, the present application may use a form of computer program product that is implemented in one or more storage media usable by computer (including, but not limited to, disk memory, CD-ROM, optical memory, and the like) that include the program code usable by computer. [074] The present application can be described in the general context of instructions executable by computer executed by a computer, for example, a program module. In general, the program module includes a routine, a program, an object, a component, a data structure, and the like, to perform a specific task or implement a specific abstract data type. The present application can also be practiced in distributed computing environments. In distributed computing environments, tasks are performed by remote processing devices connected via a communications network. In a distributed computing environment, the program module can be located on the storage medium of the local or remote computer, including storage devices. [075] The implementations in this specification are described progressively. For the same or similar parts of the implementations, Petition 870190059761, of 06/27/2019, p. 59/74 24/24 references can be made to the implementations. Each implementation focuses on a difference from other implementations. In particular, a system implementation is basically similar to a method implementation and is therefore briefly described. For related parties, references can be made to the related descriptions in the implementation of the method. [076] Previous implementations are implementations of the present application and are not intended to limit the present application. A technician in the subject can make several modifications and changes in this application. Any modification, equivalent replacement, or enhancement made without departing from the spirit and principle of this application, will be within the scope of the claims of this application.
权利要求:
Claims (12) [1] Claims 1. METHOD FOR CONSENSUS VERIFICATION, characterized by the fact that the method comprises: - obtain, through a regulatory node, a transaction request, in which the transaction request comprises the transaction data and a signature of at least one transaction node; - determine an asset number that corresponds to the signature of at least one transaction node in the transaction data based on the signature - assign the asset number to at least one transaction node; - determine whether the transaction request is valid based on the transaction data, signature and asset number; - in response to the determination that the transaction request is valid, generate a summary based on the specified data included in the transaction data; and - send the summary and unspecified data included in the transaction data to a respective consensus node, so that the respective consensus node performs a consensus check. [2] 2. METHOD, according to claim 1, characterized by the fact that it still comprises: - reject the transaction request in response to determining that the transaction request is invalid. [3] 3. The METHOD, according to claim 1, characterized by the fact that before determining whether the transaction request is valid, it comprises: - obtain a digital certificate of at least one transaction node. Petition 870190059761, of 06/27/2019, p. 71/74 2/4 [4] 4. The METHOD, according to claim 3, characterized by the fact that determining whether the transaction request is valid comprises: - determine whether the transaction request is valid based on the transaction data, the signature of at least one transaction node and the digital certificate of at least one transaction node. [5] 5. METHOD, according to claim 3, characterized by the fact that determining whether the transaction request is valid comprises: - decrypt the signature of at least one transaction node based on a public key included in the digital certificate of the transaction node; - in response to determining that a decryption result that corresponds to at least one transaction node is the same as the summary of the transaction data, determine the asset number that corresponds to an identity based on the identity included in the digital certificate at least one transaction node; and - determine the asset number as an asset number of the transaction belonging to the transaction node. [6] 6. METHOD, according to claim 5, characterized by the fact that it still comprises: - determine whether the transaction request is valid based on the asset number belonging to at least one transaction node, the signature of at least one transaction node and the transaction data; or - determine that the transaction request is invalid when determining that a decryption result that corresponds to at least one transaction node is different from the summary of the transaction data. Petition 870190059761, of 06/27/2019, p. 72/74 3/4 [7] 7. METHOD, according to claim 6, characterized by the fact that determining whether the transaction request is valid comprises: - determine that the transaction node is invalid in response to the determination that the asset number belonging to the transaction node does not comprise at least one asset number used through the transaction node; or - determine that the transaction node is valid in response to the determination that the asset number belonging to the transaction node comprises all asset numbers used by the transaction node. [8] 8. METHOD, according to claim 7, characterized by the fact that determining whether the transaction request is valid comprises: - determine that the transaction request is invalid in response to the determination that at least one transaction node is invalid; or - determine that the transaction request is valid in response to the determination that all transaction nodes are valid. [9] 9. METHOD, according to the claim, characterized by the fact that the method still comprises: - instruct at least one transaction node to store the transaction data or the specified data included in the transaction data in response to determining that the transaction request is valid. [10] 10. METHOD, according to claim 1, characterized by the fact that the regulatory node is a node of a blockchain network configured to regulate transactions by checking the items, in which the items verified by the regulatory node are recognized by a plurality of blockchain nodes of the blockchain network. Petition 870190059761, of 06/27/2019, p. 73/74 4/4 [11] 11. METHOD, according to claim 10, characterized by the fact that the blockchain network comprises a consortium blockchain network. [12] 12. DEVICE FOR THE CONSENSUS CHECK, characterized by the fact that the device comprises a plurality of modules configured to carry out the method according to claims 1 to 11.
类似技术:
公开号 | 公开日 | 专利标题 BR112019013367A2|2019-12-31|consensus verification method and consensus verification device WO2018233536A1|2018-12-27|Authentication method, and authentication data processing method and device based on blockchain BR112019020197A2|2020-04-22|method and apparatus for processing transaction requests BR112019016831B1|2021-01-19|blockchain system and data storage method and device ES2841828T3|2021-07-09|Blockchain-based data processing method and device JP6859506B2|2021-04-14|Digital certificate management methods, devices, and systems WO2021068636A1|2021-04-15|Block chain-based creation method, apparatus, device and system for verifiable claim BR112019007128A2|2019-10-01|business processing method and business processing apparatus BR112019013204A2|2019-12-10|service processing method and service processing device US10885207B2|2021-01-05|Method, apparatus, and electronic device for blockchain-based recordkeeping ES2810828T3|2021-03-09|Procedure and device for processing a service request WO2018103554A1|2018-06-14|Business data processing method, verification method, apparatus and system BR112019011703A2|2020-12-08|METHOD FOR THE TRANSFER OF ASSETS AND APPLIANCE FOR THE TRANSFER OF ASSETS BR112019010368B1|2021-12-14|METHOD FOR PROCESSING A SERVICE REQUEST AND DEVICE FOR PROCESSING A SERVICE REQUEST
同族专利:
公开号 | 公开日 EP3547199A1|2019-10-02| CA3048743A1|2018-11-01| CN107392040B|2019-08-09| US20190354977A1|2019-11-21| EP3547199A4|2020-01-01| AU2018257226B2|2021-06-24| AU2018257226A1|2019-07-11| MX2019007807A|2019-09-06| TWI698820B|2020-07-11| EP3547199B1|2021-09-22| RU2728524C1|2020-07-30| JP2020508593A|2020-03-19| PH12019501503A1|2020-06-08| WO2018196813A1|2018-11-01| JP6789397B2|2020-11-25| KR102281558B1|2021-07-27| KR20190090832A|2019-08-02| KR20210081444A|2021-07-01| TW201839682A|2018-11-01| CN107392040A|2017-11-24|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题 WO2003105002A1|2002-06-11|2003-12-18|株式会社帝国データバンク|General-purpose autentication system in organization| GB0229894D0|2002-12-21|2003-01-29|Ibm|Methods, apparatus and computer programs for generating and/or using conditional electronic signatures and/or for reporting status changes| GB2509055B|2012-12-11|2016-03-23|Gurulogic Microsystems Oy|Encoder and method| JP6304076B2|2015-03-05|2018-04-04|ブラザー工業株式会社|Information processing apparatus, content distribution system, information processing method, and program| WO2016164496A1|2015-04-06|2016-10-13|Bitmark, Inc.|System and method for decentralized title recordation and authentication| US20160342977A1|2015-05-20|2016-11-24|Vennd.io Pty Ltd|Device, method and system for virtual asset transactions| GB2539430A|2015-06-16|2016-12-21|The Provost Fellows Found Scholars & The Other Members Of Board Of The College Of The Holy & Unidv T|Digital token exchange system| US20180253727A1|2016-07-02|2018-09-06|Royal Bank Of Canada|Secure funding of electronic payments| AU2016288644A1|2015-07-02|2018-02-22|Nasdaq, Inc.|Systems and methods of secure provenance for distributed transaction databases| US20170085555A1|2015-07-14|2017-03-23|Fmr Llc|Point-to-Point Transaction Guidance Apparatuses, Methods and Systems| CN108140180A|2015-07-28|2018-06-08|雷蛇私人有限公司|The method for rewarding the server for generating distributed digital resource field is used for for rewarding the server for generating distributed digital resource field and control| AU2016100059A4|2016-01-24|2016-03-03|The Trustee For The Mckeon Family Trust|integratedCONTRACT is a process of embedding dynamic data characteristics into financial and other instruments using Blockchain technology and a unique method for transacting on online peer to peer and marketplace exchanges.| US9849364B2|2016-02-02|2017-12-26|Bao Tran|Smart device| EP3437048B1|2016-04-01|2021-06-09|ConsenSys Software Inc.|Systems and methods for providing data privacy in a private distributed ledger| US10204341B2|2016-05-24|2019-02-12|Mastercard International Incorporated|Method and system for an efficient consensus mechanism for permissioned blockchains using bloom filters and audit guarantees| CN105976232B|2016-06-24|2020-04-28|深圳前海微众银行股份有限公司|Asset transaction method and device| WO2018004527A1|2016-06-28|2018-01-04|Intel Corporation|Cell for n-negative differential resistance latch| CN106385315B|2016-08-30|2019-05-17|北京三未信安科技发展有限公司|A kind of digital certificate management method and system| CN106375317A|2016-08-31|2017-02-01|北京明朝万达科技股份有限公司|Block chain-based big data security authentication method and system| CN106411901B|2016-10-08|2018-01-23|北京三未信安科技发展有限公司|A kind of digital identity mark management method and system| CN106503098B|2016-10-14|2021-11-12|中金云金融(北京)大数据科技股份有限公司|Block chain cloud service framework system built in Paas service layer| US10484346B2|2017-02-07|2019-11-19|Microsoft Technology Licensing, Llc|Establishment of consortium blockchain network| CN107392040B|2017-04-28|2019-08-09|阿里巴巴集团控股有限公司|A kind of method and device of common recognition verifying|CN107392040B|2017-04-28|2019-08-09|阿里巴巴集团控股有限公司|A kind of method and device of common recognition verifying| CN107395665B|2017-05-22|2020-04-24|创新先进技术有限公司|Block chain service acceptance and service consensus method and device| CN107592293A|2017-07-26|2018-01-16|阿里巴巴集团控股有限公司|The means of communication, digital certificate management method, device and electronic equipment between block chain node| CN110070428B|2018-01-19|2021-11-02|创新先进技术有限公司|Supervision and inspection method and device and electronic equipment| CN112767158A|2018-02-27|2021-05-07|创新先进技术有限公司|Transaction execution method and device based on block chain and electronic equipment| CN108648081B|2018-05-07|2020-08-18|北京柏链基石科技有限公司|Transaction processing method and device based on block chain and electronic equipment| CN108711052B|2018-05-18|2021-04-30|电子科技大学|Information verification system based on block chain| CN109067539B|2018-06-13|2021-09-28|深圳前海微众银行股份有限公司|Alliance chain transaction method, alliance chain transaction equipment and computer readable storage medium| CN109011584A|2018-06-22|2018-12-18|深圳市摩掌信息技术有限公司|A kind of method of commerce, device and the terminal device of the fictitious assets based on game| CN109087098A|2018-07-27|2018-12-25|杭州复杂美科技有限公司|A kind of transaction processing method, system, equipment and storage medium for permitting chain| CN109040271B|2018-08-15|2020-12-29|深圳市引方科技有限公司|Network equipment integrity protection method under distributed environment| CN109391480A|2018-10-19|2019-02-26|微梦创科网络科技(中国)有限公司|A kind of date storage method, device and electronic equipment| CN112381646A|2018-10-31|2021-02-19|创新先进技术有限公司|Privacy transaction based on block chain and application method and device thereof| ES2818623T3|2018-11-07|2021-04-13|Advanced New Technologies Co Ltd|Communication management between consensus nodes and client nodes| CN109598149B|2018-11-20|2020-04-07|阿里巴巴集团控股有限公司|Service processing method and device| CN110020854B|2018-11-27|2020-11-17|创新先进技术有限公司|Data evidence storage method and system based on multiple block chain networks| CN111899104A|2018-11-27|2020-11-06|创新先进技术有限公司|Service execution method and device| CN111327564B|2018-12-13|2022-03-08|航天信息股份有限公司|Access method and device for alliance chain| CN111614709A|2019-02-26|2020-09-01|傲为信息技术有限公司|Partition transaction method and system based on block chain| CN110692228B|2019-03-01|2022-02-22|创新先进技术有限公司|Method and equipment for protecting transaction activity sensitive data based on intelligent contracts in blockchain| CN110009353A|2019-04-01|2019-07-12|北京柏链基石科技有限公司|A kind of account register method, device and electronic equipment based on block chain| CN111767337A|2019-05-24|2020-10-13|北京沃东天骏信息技术有限公司|Block verification method, device and equipment| WO2021030288A1|2019-08-09|2021-02-18|Ruon Limited|User media platform server system| WO2020180365A1|2019-12-05|2020-09-10|Futurewei Technologies, Inc.|System and method of establishing a trusted relationship in a distributed system| CN113282603A|2020-03-26|2021-08-20|腾讯科技(深圳)有限公司|Block chain consensus node checking method, device, equipment and storage medium| EP3957025A4|2020-07-03|2022-02-23|Alipay Hangzhou Inf Tech Co Ltd|System and method for providing privacy and security protection in blockchain-based private transactions| CN112235379B|2020-09-30|2021-09-24|电子科技大学|Block chain bottom layer shared storage method| CN112600672B|2020-11-30|2022-02-25|清华大学|Inter-domain credibility consensus method and device based on real identity| CN112865959A|2020-12-30|2021-05-28|杭州趣链科技有限公司|Consensus method of distributed node equipment, node equipment and distributed network| CN113114634A|2021-03-24|2021-07-13|武汉卓尔信息科技有限公司|Credible data management method based on alliance chain and alliance chain| CN113821474A|2021-11-22|2021-12-21|武汉龙津科技有限公司|Data processing method, device, equipment and storage medium|
法律状态:
2021-04-06| B25A| Requested transfer of rights approved|Owner name: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD. (KY) | 2021-04-27| B25A| Requested transfer of rights approved|Owner name: ADVANCED NEW TECHNOLOGIES CO., LTD. (KY) | 2021-10-13| B350| Update of information on the portal [chapter 15.35 patent gazette]| 2021-12-21| B09A| Decision: intention to grant [chapter 9.1 patent gazette]| 2022-03-03| B16A| Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]|Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 26/04/2018, OBSERVADAS AS CONDICOES LEGAIS. |
优先权:
[返回顶部]
申请号 | 申请日 | 专利标题 CN201710292517.6A|CN107392040B|2017-04-28|2017-04-28|A kind of method and device of common recognition verifying| PCT/CN2018/084624|WO2018196813A1|2017-04-28|2018-04-26|Consensus verification method and device| 相关专利
Sulfonates, polymers, resist compositions and patterning process
Washing machine
Washing machine
Device for fixture finishing and tension adjusting of membrane
Structure for Equipping Band in a Plane Cathode Ray Tube
Process for preparation of 7 alpha-carboxyl 9, 11-epoxy steroids and intermediates useful therein an
国家/地区
|